leetcodeJS

Personal solution for leetcode problem using Javascript

View on GitHub

Problem

Given an array nums. We define a running sum of an array as runningSum[i] = sum(nums[0]…nums[i]).

Return the running sum of nums.

Example 1:

Input: nums = [1,2,3,4]

Output: [1,3,6,10]

Explanation: Running sum is obtained as follows: [1, 1+2, 1+2+3, 1+2+3+4].

Example 2:

Input: nums = [1,1,1,1,1]

Output: [1,2,3,4,5]

Explanation: Running sum is obtained as follows: [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1].

Example 3:

Input: nums = [3,1,2,10,1]

Output: [3,4,6,16,17]

Constraints:

1 <= nums.length <= 1000 -10^6 <= nums[i] <= 10^6

Pre analysis

Should be possible in O(n) since we have to walk at least once over the array.

Another solution

Same complexity but ideally this should have been used instead of reduce.

var runningSum = function(nums) {
    let runSum = 0;

    return nums.map((num) => {
        runSum += num;
        return runSum;
    });
};